home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Languguage OS 2
/
Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO
/
gnu
/
libg_261.zip
/
libg_261
/
libg++
/
proto-kit
/
make-source-dependencies
< prev
next >
Wrap
Text File
|
1991-06-28
|
1KB
|
46 lines
#!/bin/sh
#
# make-source-dependencies:
# this shell script prints GNU Make compatible
# input from a list of prototype instantiations read
# (one per line) from the input.
#
# instantiations instances: /tmp/make-source-dependencies.$$.0
# (cleaned up) instantiation instances: /tmp/make-source-dependencies.$$.1
# sorted list of generic prototypes (culled from above): /tmp/make-source-dependencies.$$.2
while read instance ; do
echo "${instance}"
done >> /tmp/make-source-dependencies.$$.0
# instances
cat /tmp/make-source-dependencies.$$.0 | \
gawk '{ for (i = 1 ; i <= NF ; i ++) print $i ; }' > /tmp/make-source-dependencies.$$.1
# prototypes
cat /tmp/make-source-dependencies.$$.0 | \
gawk -F. '{ print $NF; }' | sort | uniq > /tmp/make-source-dependencies.$$.2
for t in `cat /tmp/make-source-dependencies.$$.2` ; do
if [ -f ${PROTO_SOURCE}/${t}.hP ] ; then
cat /tmp/make-source-dependencies.$$.1 | \
gawk -F. '$NF == "'${t}'" { printf "$(PC)/%s.h ", $0 ; }' ;
echo ": \$(${PP})/${t}.hP" ;
echo ' $(make-proto-file) $(prepend-proto-includes)' ;
echo ;
fi;
if [ -f ${PROTO_SOURCE}/${t}.ccP ] ; then
cat /tmp/make-source-dependencies.$$.1 | \
gawk -F. '$NF == "'${t}'" { printf "$(PC)/%s.cc ", $0 ; }' ;
echo ": \$(${PP})/${t}.ccP" ;
echo ' $(make-proto-file)' ;
echo ;
fi;
done;
rm -f /tmp/make-source-dependencies.$$.0
rm -f /tmp/make-source-dependencies.$$.1
rm -f /tmp/make-source-dependencies.$$.2